/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package bean;

import datos.DetalleObra;
import datos.TipoConstruccion;
import java.util.ArrayList;
import java.util.List;
//import javax.faces.component.UIParameter;
import javax.faces.event.ActionEvent;

/**
 *
 * @author Ing. Monica Merlo, Ing. Agustin  Fernandez
 */

public class DetalleObraBean {
    private int id;
    private float cantidad;
    private float valuacion;
    private String tipoConstruccion;
    private int idObra;
    List detallesPrecargados;
    private int filaSelecionada;
    private boolean mostrarAgregar = false;
//    private DetalleObra detalleSeleccionado = new DetalleObra();

    /** Creates a new instance of DetalleObraBean */
    public DetalleObraBean() {
    }

    /**
     * @return the id
     */
    public int getId() {
        return id;
    }

    /**
     * @param id the id to set
     */
    public void setId(int id) {
        this.id = id;
    }

    /**
     * @return the cantidad
     */
    public float getCantidad() {
        return cantidad;
    }

    /**
     * @param cantidad the cantidad to set
     */
    public void setCantidad(float cantidad) {
        this.cantidad = cantidad;
    }

    /**
     * @return the valuacion
     */
    public float getValuacion() {
        return valuacion;
    }

    /**
     * @param valuacion the valuacion to set
     */
    public void setValuacion(float valuacion) {
        this.valuacion = valuacion;
    }

    /**
     * @return the tipoConstruccion
     */
    public String getTipoConstruccion() {
        return tipoConstruccion;
    }

    /**
     * @param tipoConstruccion the tipoConstruccion to set
     */
    public void setTipoConstruccion(String tipoConstruccion) {
        this.tipoConstruccion = tipoConstruccion;
    }

    /**
     * @return the idObra
     */
    public int getIdObra() {
        return idObra;
    }

    /**
     * @param idObra the idObra to set
     */
    public void setIdObra(int idObra) {
        this.idObra = idObra;
    }

    /**
     *
     * @return
     */
    public List<DetalleObra> getDetallesPrecargados(){
        return this.detallesPrecargados;
    }

    /**
     *
     * @param e
     */
    public void agregarDetallePrecargadoOyente(ActionEvent e){
        this.mostrarAgregar = true;
        this.cantidad = 0.0f;
        this.tipoConstruccion = "";
        this.valuacion = 0.0f;
    }
    
    /**
     *
     * @return
     */
    public String agregarDetallePrecargado(){
        DetalleObra det = new DetalleObra();
        det.setCantidad(this.getCantidad());
        det.setValuacion(this.getValuacion());
        TipoConstruccion tipo = new TipoConstruccion();
        tipo.setDescripcion("");
        tipo.setNombre(this.getTipoConstruccion());
        det.setIdTipoConstruccion(tipo);
        if(detallesPrecargados==null)this.detallesPrecargados = new ArrayList();
        this.detallesPrecargados.add(det);
        this.mostrarAgregar = false;
        return null;
    }

    /**
     *
     * @param e
     */
    public void cancelarOyente(ActionEvent e){
        this.mostrarAgregar = false;
        this.cantidad = 0.0f;
        this.tipoConstruccion = "";
        this.valuacion = 0.0f;
    }

    /**
     *
     */
    public void quitarDetallePrecargado(){
        //UIParameter component = (UIParameter) e.getComponent().findComponent("filSel");
        //int fil= Integer.parseInt(component.getValue().toString());
        this.detallesPrecargados.remove(this.filaSelecionada);
        //this.detallesPrecargados.remove(this.detalleSeleccionado);
    }

    /**
     * @return the filaSelecionada
     */
    public int getFilaSelecionada() {
        return filaSelecionada;
    }

    /**
     * @param filaSelecionada the filaSelecionada to set
     */
    public void setFilaSelecionada(int filaSelecionada) {
        this.filaSelecionada = filaSelecionada;
    }

    /**
     * @return the mostrarAgregar
     */
    public boolean isMostrarAgregar() {
        return mostrarAgregar;
    }

    /**
     * @param mostrarAgregar the mostrarAgregar to set
     */
    public void setMostrarAgregar(boolean mostrarAgregar) {
        this.mostrarAgregar = mostrarAgregar;
    }

//    /**
//     * @return the detalleSeleccionado
//     */
//    public DetalleObra getDetalleSeleccionado() {
//        return detalleSeleccionado;
//    }
//
//    /**
//     * @param detalleSeleccionado the detalleSeleccionado to set
//     */
//    public void setDetalleSeleccionado(DetalleObra detalleSeleccionado) {
//        this.detalleSeleccionado = detalleSeleccionado;
//    }
    

}
